草庐IT

c++ - std::async 超时

全部标签

javascript - 几乎所有地方都可以使用 async/await 吗?

我目前正在编写供个人使用的小型NodeJSCLI工具,我决定尝试使用Babel的ES7async/await功能。它是一个网络工具,所以我显然有异步网络请求。我为request包写了一个简单的包装器:exportdefaultfunction(options){returnnewPromise(function(resolve,reject){request({...options,followAllRedirects:true,headers:{"user-agent":"Mozilla/5.0(WindowsNT10.0;WOW64;rv:47.0)Gecko/20100101Fi

javascript - 如何知道计时器是否在 javascript 中被清除或超时?

好的,非常简单的问题。我正在参加javascript速成类。如果我使用timer=setTimeout(...,500)设置定时器,然后clearTimeout(timer)清除定时器,定时器的整数值不变,所以我的问题是如何知道计时器是否超时或清除?我想使用if(timer){...},但显然正整数总是返回true。 最佳答案 如果您正在寻找更正式的东西,您可以构建封装setTimeout/clearTimeout功能的javascript类。这样的类可能看起来像这样:/**classTimer**/varTimer=functio

Javascript Async=true 属性

我在某个未具名vendor的文档中看到此代码示例。它似乎异步加载脚本,然后从中调用函数。我意识到if-undefined检查可以防止明显的错误,但这不是完全不正确吗?我相信在IE8/9中它会正常工作,但会阻塞执行,直到加载并执行LOADER_URL脚本;而且我相信许多其他支持异步属性的浏览器,这只会导致内联block仅在部分时间执行ifblock内的代码。文档指出“标签是异步的,不会减慢页面的加载速度。”if(typeof(OBJECT_DEFINED_IN_LOADER_URL)!="undefined"){OBJECT_DEFINED_IN_LOADER_URL.Load(fals

javascript - 如何使用 async/await 将此回调转换为 promise?

以下函数从url获取图像,加载它,并返回它的宽度和高度:functiongetImageData(url){constimg=newImage()img.addEventListener('load',function(){return{width:this.naturalWidth,height:this.naturalHeight}})img.src=url}问题是,如果我这样做:ready(){console.log(getImageData(this.url))}我得到undefined因为函数运行但图像尚未加载。如何使用await/async只在图片加载完成且宽高已经可用时才

javascript - async/await 会阻塞事件循环吗?

这个问题在这里已经有了答案:Willasync/awaitblockathreadnode.js(6个答案)InJavaScript,doesusingawaitinsidealoopblocktheloop?(8个答案)关闭4年前。我正在阅读Don'tBlocktheEventLoop来自Node.js指南。有一句话说:YoushouldmakesureyouneverblocktheEventLoop.Inotherwords,eachofyourJavaScriptcallbacksshouldcompletequickly.Thisofcoursealsoappliestoyo

javascript - 查看 javascript 中的所有超时/间隔?

我正在编写一个应用程序,它利用JavaScript超时和间隔来更新页面。有没有办法查看设置了多少间隔?我想确保我不会因为设置数百个间隔而意外杀死浏览器。这甚至是个问题吗? 最佳答案 我认为没有办法枚举事件计时器,但您可以覆盖window.setTimeout和window.clearTimeout并将它们替换为您自己的实现做一些跟踪,然后调用原件。window.originalSetTimeout=window.setTimeout;window.originalClearTimeout=window.clearTimeout;wi

javascript - Request-Promise 使用 async/await 抛出 "no auth mechanism defined"

我刚刚尝试使用request-promise进行async/await并遇到了这个错误:RequestError:Error:noauthmechanismdefinedatnewRequestError(node_modules/request-promise-core/lib/errors.js:14:15)atRequest.plumbing.callback(node_modules/request-promise-core/lib/plumbing.js:87:29)atRequest.RP$callback[as_callback](node_modules/request

javascript - Apollo "Subscription field must return Async Iterable. Received: undefined"

我有一个触发channel事件“countIncr”的突变,但我没有看到事件的相应订阅与事件负载一起触发。更新:我已经对这篇文章进行了多次更新,现在我正在更改标题以更能代表我所在的位置。我收到graphqlPlayground错误"SubscriptionfieldmustreturnAsyncIterable.Received:undefined"我遇到问题的TGRstack复制:https://github.com/TGRstack/tgr-apollo-subscription-example-microservice/没有TGRstack的工作再现:https://github

javascript - jQuery.ajax() - 如何最好地处理超时?

我想知道,使用jQuery.ajax()处理超时的最佳方法是什么。这是我目前的解决方案:如果发生超时,页面将被重新加载,脚本将有另一次机会在给定的时间范围内加载数据。问题:如果“get_json.php”(下例)真的不可用,它将变成一个无休止的重新加载循环。可能的解决方案:添加一个计数器并在$x重新加载后取消。问题1:如何最好地处理超时错误?问题2:您建议的暂停时间范围是什么?为什么?代码:$.ajax({type:"POST",url:"get_json.php",timeout:500,dataType:"json",success:function(json){alert("JS

javascript - clearTimeout 可以删除 Javascript 中触发的超时事件的未处理回调吗?

如果我为一个已经触发但其回调仍在执行队列中的setTimeout事件调用clearTimeout,clearTimeout是否仍然阻止处理该事件?换句话说,是否仍然可以在定时器触发和回调执行的延迟期间清除超时事件?通俗地说,我的猜测是,一旦超时触发,它会将回调排队并销毁自身——使用该计时器的id创建一个clearTimeout对排队的回调没有影响。 最佳答案 我认为答案是yes.(我目前使用的是Firefox。)编辑—为了完整起见,我构建的测试是这样的:vart1=setTimeout(function(){clearTimeout